package com.TeacherInfoServer.common.service;

import com.TeacherInfoServer.common.Result;
import com.TeacherInfoServer.pojo.DTO.SearchDTO.DoctoralSupervisorSearchDTO;
import com.TeacherInfoServer.pojo.entity.DoctoralSupervisor;
import com.TeacherInfoServer.pojo.DTO.AddDoctoralSupervisorDTO;
import com.TeacherInfoServer.pojo.DTO.UpdateDoctoralSupervisorDTO;
import com.TeacherInfoServer.pojo.vo.DoctoralSupervisorListVo;
import com.baomidou.mybatisplus.extension.service.IService;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.web.bind.annotation.RequestParam;

import java.io.IOException;
import java.util.Map;

public interface DoctoralSupervisorService extends IService<DoctoralSupervisor> {
    Result<Map<String, Integer>> addOne(AddDoctoralSupervisorDTO addDoctoralSupervisorDTO);
    Result<DoctoralSupervisorListVo> getList(Long pageNumber, Long pageSize);

    Map<String,Object> searchDoctoralSupervisorList(DoctoralSupervisorSearchDTO doctoralSupervisorSearchDTO);

    void export(HttpServletResponse response, @RequestParam String fileName) throws IOException;
    Result<Map<String, Integer>> deleteBatch(String[] teacherIds);
    Result<Map<String, Integer>> updateOne(UpdateDoctoralSupervisorDTO updateDoctoralSupervisorDTO);
}
